print("python异常")
# 如果出现了语法错误，代码不会执行
# SyntaxError : 语法错误， idea可以检测出来
# str = "aaa
# print(str)


# if True:
# # IndentationError： 代码结构错误
# print("asda")


# 如果出现了异常，再前面的代码可以正常运行
# 除0异常
# i = 100 / 0
# print(i)


# NameError： 变量不存在异常
# print(name)


# ValueError: 类型转换成异常
# print(int("java"))


# TypeError： 类型异常
# print("1" + 1)


l = [1, 2, 3]
# IndexError: 下标越界
# print(l[10])

s = "java"

# AttributeError : 属性异常
# s.append("asd")


try:
    # 捕获异常
    i = 100 / 0
except(AttributeError) as a:
    # 处理异常
    print(a)
except(ZeroDivisionError) as a:
    print(a)
else:
    print("其它异常")
finally:
    print("都会执行")

print("代码执行完成")

# 如果条件为true ，正常运行，如果为false抛出后面的异常
assert 10 > 5, RuntimeError("运行异常")

# 直接抛出异常
raise RuntimeError("异常")
